home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Komputer 2010 April
/
PCWorld0410.iso
/
hity wydania
/
Ubuntu 9.10 PL
/
karmelkowy-koliberek-desktop-9.10-i386-PL.iso
/
casper
/
filesystem.squashfs
/
etc
/
bash_completion.d
/
_subversion
next >
Wrap
Text File
|
2009-04-02
|
10KB
|
427 lines
# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
# ex: ts=8 sw=8 noet filetype=sh
#
# svn completion
#
have svn &&
{
_svn()
{
local cur prev commands options command
COMPREPLY=()
cur=`_get_cword`
commands='add blame praise annotate ann cat checkout co cleanup commit \
ci copy cp delete del remove rm diff di export help ? h import \
info list ls lock log merge mkdir move mv rename ren \
propdel pdel pd propedit pedit pe propget pget pg \
proplist plist pl propset pset ps resolved revert \
status stat st switch sw unlock update up'
if [[ $COMP_CWORD -eq 1 ]] ; then
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '--version' -- $cur ) )
else
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
fi
else
prev=${COMP_WORDS[COMP_CWORD-1]}
case $prev in
--config-dir)
_filedir -d
return 0;
;;
-@(F|-file|-targets))
_filedir
return 0;
;;
--encoding)
COMPREPLY=( $( compgen -W \
'$( iconv --list | sed -e "s@//@@;" )' \
-- "$cur" ) )
return 0;
;;
--@(editor|diff|diff3)-cmd)
COMP_WORDS=(COMP_WORDS[0] $cur)
COMP_CWORD=1
_command
return 0;
;;
esac
command=${COMP_WORDS[1]}
if [[ "$cur" == -* ]]; then
# possible options for the command
case $command in
add)
options='--auto-props --no-auto-props \
--force --targets --no-ignore \
--non-recursive -N -q --quiet'
;;
@(blame|annotate|ann|praise))
options='-r --revisions --username \
--password --no-auth-cache \
--non-interactive -v \
--verbose --incremental --xml'
;;
cat)
options='-r --revision --username \
--password --no-auth-cache \
--non-interactive'
;;
@(checkout|co))
options='-r --revision -q --quiet -N \
--non-recursive --username \
--password --no-auth-cache \
--non-interactive \
--ignore-externals'
;;
cleanup)
options='--diff3-cmd'
;;
@(commit|ci))
options='-m --message -F --file \
--encoding --force-log -q \
--quiet --non-recursive -N \
--targets --editor-cmd \
--username --password \
--no-auth-cache \
--non-interactive --no-unlock'
;;
@(copy|cp))
options='-m --message -F --file \
--encoding --force-log -r \
--revision -q --quiet \
--editor-cmd -username \
--password --no-auth-cache \
--non-interactive'
;;
@(delete|del|remove|rm))
options='--force -m --message -F \
--file --encoding --force-log \
-q --quiet --targets \
--editor-cmd -username \
--password --no-auth-cache \
--non-interactive'
;;
@(diff|di))
options='-r --revision -x --extensions \
--diff-cmd --no-diff-deleted \
-N --non-recursive --username \
--password --no-auth-cache \
--non-interactive --force \
--old --new --notice-ancestry'
;;
export)
options='-r --revision -q --quiet \
--username --password \
--no-auth-cache \
--non-interactive -N \
--non-recursive --force \
--native-eol --ignore-externals'
;;
import)
options='--auto-props --no-auto-props \
-m --message -F --file \
--encoding --force-log -q \
--quiet --non-recursive \
--no-ignore --editor-cmd \
--username --password \
--no-auth-cache \
--non-interactive'
;;
info)
options='--username --password \
--no-auth-cache \
--non-interactive -r \
--revision --xml --targets \
-R --recursive --incremental'
;;
@(list|ls))
options='-r --revision -v --verbose -R \
--recursive --username \
--password --no-auth-cache \
--non-interactive \
--incremental --xml'
;;
lock)
options='-m --message -F --file \
--encoding --force-log \
--targets --force --username \
--password --no-auth-cache \
--non-interactive'
;;
log)
options='-r --revision -v --verbose \
--targets --username \
--password --no-auth-cache \
--non-interactive \
--stop-on-copy --incremental \
--xml -q --quiet --limit'
;;
merge)
options='-r --revision -N \
--non-recursive -q --quiet \
--force --dry-run --diff3-cmd \
--username --password \
--no-auth-cache \
--non-interactive \
--ignore-ancestry'
;;
mkdir)
options='-m --message -F --file \
--encoding --force-log -q \
--quiet --editor-cmd \
--username --password \
--no-auth-cache \
--non-interactive'
;;
@(move|mv|rename|ren))
options='-m --message -F --file \
--encoding --force-log -r \
--revision -q --quiet \
--force --editor-cmd \
--username --password \
--no-auth-cache \
--non-interactive'
;;
@(propdel|pdel|pd))
options='-q --quiet -R --recursive -r \
--revision --revprop \
--username --password \
--no-auth-cache \
--non-interactive'
;;
@(propedit|pedit|pe))
options='-r --revision --revprop \
--encoding --editor-cmd \
--username --password \
--no-auth-cache \
--non-interactive --force'
;;
@(propget|pget|pg))
options='-R --recursive -r --revision \
--revprop --strict --username \
--password --no-auth-cache \
--non-interactive'
;;
@(proplist|plist|pl))
options='-v --verbose -R --recursive \
-r --revision --revprop -q \
--quiet --username --password \
--no-auth-cache \
--non-interactive'
;;
@(propset|pset|ps))
options='-F --file -q --quiet \
--targets -R --recursive \
--revprop --encoding \
--username --password \
--no-auth-cache \
--non-interactive -r \
--revision --force'
;;
resolved)
options='--targets -R --recursive -q \
--quiet'
;;
revert)
options='--targets -R --recursive -q \
--quiet'
;;
@(status|stat|st))
options='-u --show-updates -v \
--verbose -N --non-recursive \
-q --quiet --username \
--password --no-auth-cache \
--non-interactive --no-ignore \
--ignore-externals \
--incremental --xml'
;;
@(switch|sw))
options='--relocate -r --revision -N \
--non-recursive -q --quiet \
--username --password \
--no-auth-cache \
--non-interactive --diff3-cmd'
;;
unlock)
options='--targets --force --username \
--password --no-auth-cache \
--non-interactive'
;;
@(update|up))
options='-r --revision -N \
--non-recursive -q --quiet \
--username --password \
--no-auth-cache \
--non-interactive \
--diff3-cmd --ignore-externals'
;;
esac
options="$options --help -h --config-dir"
COMPREPLY=( $( compgen -W "$options" -- $cur ) )
else
if [[ "$command" == @(help|h|\?) ]]; then
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
else
_filedir
fi
fi
fi
return 0
}
complete -F _svn $filenames svn
_svnadmin()
{
local cur prev commands options mode
COMPREPLY=()
cur=`_get_cword`
commands='create deltify dump help ? hotcopy list-dblogs \
list-unused-dblogs load lslocks lstxns recover rmlocks \
rmtxns setlog verify'
if [[ $COMP_CWORD -eq 1 ]] ; then
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '--version' -- $cur ) )
else
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
fi
else
prev=${COMP_WORDS[COMP_CWORD-1]}
case $prev in
--config-dir)
_filedir -d
return 0;
;;
--fs-type)
COMPREPLY=( $( compgen -W 'fsfs bdb' -- $cur ) )
return 0;
;;
esac
command=${COMP_WORDS[1]}
if [[ "$cur" == -* ]]; then
# possible options for the command
case $command in
create)
options='--bdb-txn-nosync \
--bdb-log-keep --config-dir \
--fs-type'
;;
deltify)
options='-r --revision -q --quiet'
;;
dump)
options='-r --revision --incremental \
-q --quiet --deltas'
;;
hotcopy)
options='--clean-logs'
;;
load)
options='--ignore-uuid --force-uuid \
--parent-dir -q --quiet \
--use-pre-commit-hook \
--use-post-commit-hook'
;;
rmtxns)
options='-q --quiet'
;;
setlog)
options='-r --revision --bypass-hooks'
;;
esac
options="$options --help -h"
COMPREPLY=( $( compgen -W "$options" -- $cur ) )
else
if [[ "$command" == @(help|h|\?) ]]; then
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
else
_filedir
fi
fi
fi
return 0
}
complete -F _svnadmin $default svnadmin
_svnlook()
{
local cur prev commands options mode
COMPREPLY=()
cur=`_get_cword`
commands='author cat changed date diff dirs-changed help ? h history \
info lock log propget pget pg proplist plist pl tree uuid \
youngest'
if [[ $COMP_CWORD -eq 1 ]] ; then
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '--version' -- $cur ) )
else
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
fi
else
command=${COMP_WORDS[1]}
if [[ "$cur" == -* ]]; then
# possible options for the command
case $command in
@(author|cat|date|dirs-changed|info|log))
options='-r --revision -t \
--transaction'
;;
changed)
options='-r --revision -t \
--transaction --copy-info'
;;
diff)
options='-r --revision -t \
--transaction \
--no-diff-deleted \
--no-diff-added \
--diff-copy-from'
;;
history)
options='-r --revision --show-ids'
;;
prop@(get|list))
options='-r --revision -t \
--transaction --revprop'
;;
tree)
options='-r --revision -t \
--transaction --show-ids \
--full-paths'
;;
esac
options="$options --help -h"
COMPREPLY=( $( compgen -W "$options" -- $cur ) )
else
if [[ "$command" == @(help|h|\?) ]]; then
COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
else
_filedir
fi
fi
fi
return 0
}
complete -F _svnlook $default svnlook
}